使用ipmi命令查询snmp trap日发送量异常问题分析
更新时间: 2026/05/28
在Gitcode上查看源码问题背景
- 单板类型:自研板;
- 软件版本:openUBMC 25.09;
- 涉及功能:ipmi读取snmp trap日发送量;
- 预制条件:按照要求配置snmp,构造三条传感器事件;
- 触发条件:发送ipmi命令读取snmp trap日发送量;
- 业务表现:预期ipmi命令查询发送量非0;实际ipmi命令查询发送量为0。
问题来源
问题复现步骤
snmp配置
构建传感器事件
执行ipmi命令,查看结果;
text
ipmitool -H ip地址 -I lanplus -p 623 -U 用户名 -P 密码 -C 17 raw 0x30 0x93 0xDB 0x07 0x00 0x87 0x00 0x03 0x00 0x00 0x10关键日志信息
ipmi查询结果显示为0,app.log无异常,且无报错:
定位过程
- 尝试构建系统事件,用ipmi命令查询snmp trap日发送量,依然为0;
- 确认告警模拟方式;如果是调用web页面那些模拟上报的话,不会记录到日发送量里面,目的是为了防止测试数据影响到真实数据,如果开启了snmp上报,在触发告警等才会记录;确认告警模拟方式为告传感器事件是通过修改Scanner达到门限传感器的告警值,系统事件是修改onepower的温度触发0x03000012电源过温事件,确认告警模拟正常,没问题;
- ipmi命令分析;根据ipmi命令可知,问题调用的ipmi命令是0x03,需要查看代码配置,网络管理系统配置的上报地址是不是在序号为4的地方,03的话查的是序号4的,如果代码配置到其他地方,这里查询到0就是正常的。
- 确认ipmi传的是0x03,序号4这里未配置地址。
问题原因
ipmi查询底地址未配置,0x03代表的是序号4的上报地址,实际这个地址为空,需要查询的是0x02的地址;
解决方案
ipmi命令改为如下查询即可:
shell
ipmitool -H ip地址 -I lanplus -p 623 -U 用户名 -P 密码 -C 17 raw 0x30 0x93 0xDB 0x07 0x00 0x87 0x00 0x02 0x00 0x00 0x10